#!/bin/sh

export TZ=Asia/Shanghai

# 日志文件夹路径
LOG_DIR="/data/charging/log"
# 备份文件夹路径
BACKUP_DIR="/data/charging/log-backups"

# 获取当前日期
NOW=$(date +"%Y%m%d%H%M%S")
# 备份文件夹名称
BACKUP_FOLDER="$BACKUP_DIR/log_backup_$NOW"

# 创建备份目录
mkdir -p "$BACKUP_FOLDER"

# 复制日志文件
#cp -r "$LOG_DIR"/* "$BACKUP_FOLDER"

# 获取今天的日期，用于筛选当天的日志文件
TODAY=$(date +"%Y%m%d")

# 定义函数来判断文件名是否包含今天的日期
is_today_log() {
    [[ $1 =~ ^.*$TODAY.*$ ]]
}

# 查找并复制符合条件的日志文件到备份文件夹，不保留原有层级
for log in "$LOG_DIR"/*; do
    if [[ -f "$log" ]]; then
        # 提取文件名（不包括路径）
        filename=$(basename "$log")

        # 判断文件名是否包含今天的日期或者是不是sys开头的日志文件
        if is_today_log "$filename" || [[ $filename == sys-* ]]; then
            cp "$log" "$BACKUP_FOLDER"
            echo "已备份: $filename"
        fi
    fi
done

echo "日志备份完成: $BACKUP_FOLDER"
